|
기본 개념 |
IDEA의 GUI
Designer는 스윙 구성 요소를 사용하고 있는 당신의 애플리케이션을 위해 그래픽 사용자 인터페이스(GUI)를 생성하는 것을 가능하게 합니다.
GUI 디자이너:
당신으로부터 심지어 단순한 자바 GUI를 생성하는 것에 관련되는 지루한 코딩의 많은 것을 덜어줍니다
배치 관리를 자동화하고, 단순화합니다
당신을 원하는 동작과 기능을 코드화하기 위해 자유롭게 하면서 시각 구성 요소의 작성의 속도를 올립니다
기존 코드에서 또는 급히 생성된 새로운 코드에서 GUI 요소의 단순한 시각 바인딩을 제공합니다
도구는 JFrame과 같은 톱-레벨의 컨테이너에서 사용되는 구성요소의 다이얼로그 또는 패널을 형성하기 위한 빠르고 쉬운 길을 제공합니다. GUI 디자이너는 애플리케이션을 위한 본체를 생성하지도 않고, 메뉴를 생성 하지 않습니다.
GUI 디자이너는 자바 어플리케이션에서 GUI를 생성하는 프로세스의 많은 것을 단순화하고, 자동화합니다. 하나의 주요한 단순화는 배치 관리입니다. 자바의 배치 관리는 매우 강력합니다. 그러나 그것은 또한 복잡합니다. 6개의 다른 배치 관리자, 각각의 자신의 규칙과 마스터하는 기술이 있습니다. GUI 개발은 일부 컨테이너로 놓이는 제어의 비교적 단순한 다이얼로그 또는 패널을 생성하는 것을 자주 포함합니다. 그러나 만일 당신이 전에 그것을 해왔다면 당신이 아는 것과 같이 자바에서 심지어 단순한 다이얼로그를 생성하는 것은 코딩의 약간 시간이 걸리는 비트입니다.
IDEA 의 GUI 디자이너는 대부분 자주 태스크를 필요로 하는 자바의 배치 관리자와 속도의 복잡도를 다루어야만 하는 것에서 당신을 자유롭게 합니다: 제어의 단순한 다이얼로그와 그룹을 생성하는 것.
GUI
Designer files :
설계 시간에, GUI 정보는 .form 확장자와 함께 특수 파일에 저장됩니다. IDEA가 일하는 메소드를 알고 있는 특별한 스키마에서 데이터는 XML로서 저장됩니다. 그들이 단지 텍스트 파일인 이후로, 당신은.form 파일을 어려움 없이 어떤 버전 제어 방식에 넣을 수 있습니다.
당신은 GUI 디자이너를 사용하는 것에 잠겨지지 않습니다. 그것과 더불어 생성한 다이얼로그 등이 당신이 자바에서 통상 생성하는 다른 것들과 함께 애플리케이션에서 공존합니다.
|
|
IDEA는 .form 파일의 XML 소스를 여는 수단을 제공하지 않습니다, 그리고 당신은 텍스트로서 이 파일을 수동으로 편집해서는 안됩니다. |
GUI
Designer Output Options :
당신이 가져도 좋은 다른 다른 자바 IDE가 사용되면서, 당신은 출력을 위해 2개의 옵션을 가집니다:
런타임 클래스만을 편집합니다(디폴트)
자바 소스 코드
디폴트로, 당신이 프로젝트를 컴파일 할 때 당신이 GUI 디자이너와 함께 생성하는 GUI는 런타임 클래스를 생성합니다. 자바 소스 코드의 중간 단계는 바이패스됩니다(최소한 사용자로서의 당신의 원근법으로부터의). 당신은 편집된 클래스가 프로젝트(아래 경로를 봅니다)를 위해 구성된 컴파일러 출력 디렉터리에 써져야만 하는 것을 선택적으로 보여줄 수 있습니다. 바라는 것이 있다면, 당신은 자바 소스 코드인 GUI 디자이너의 출력을 변경할 수 있습니다. 각 형식이 결부된 클래스에 UI 구성 요소를 위한 코드는 생성됩니다.
여기에서 기술된 옵션에 관한 더 많은 정보를 위해, Configuring
Projects: GUI Designer Options을 보십시오.
|
그것은 어떻게 작동합니까 |
이 섹션은 당신에게 GUI 디자이너를 사용하고 있는 GUI를 생성하는 프로세스의 간단한 개요를 줍니다. 다른 화제는 좀 더 상세하게 특성을 포함시킬 것입니다.
1.
첫 번째로, 당신은 "형식" 위에서 시각 구성 요소를 조정합니다 그들의 크기, 위치와 간격의 단순한 "안구" 근사를 만듭니다. 형식과 그 구성 요소가 배치 모드를 "프로토타이핑" 디폴트에 있는 동안 당신은 이것을 할 수 있습니다.
XY layout mode를 부릅니다:

2. 당신은 그 다음 구성 요소의 여러 가지 속성을 설정했습니다. 당신은 시각 구성 요소 그 자체 위에서 대부분의 레이블과 텍스트를 위치에서 편집할 수 있습니다(아래 왼쪽으로)또는 당신은 그들과 다른 속성을 Inspector 에서(아래 오른쪽에서) 편집할 수 있습니다.
|
|
|
3. 당신은 여러 가지 구성 요소를 형식 내에서 서브그룹에서 선택적으로 정리합니다. 예를 들면, 당신은 아래 그림에 제시된 것처럼 몇 개의 라디오 버튼 또는 버튼을 다른 그룹으로 분류할지도 모릅니다:

모으게 되는 구성 요소는 그들이 XY 시제품 모드에 있을 수 있었던 것에 따라 그들이 그들의 컨테이너 내에서 이동할 수 없거나, 크기를 변경될 수 없는 "그리드 배치" 모드에 들어갑니다. 당신은 GUI 디자이너 툴바 위에서 3개의 배치 동작 중의 1개와 함께 컨테이너 배치를 선택 성분에 적용합니다. 구성 요소는 포함됩니다...
Horizontal
layout action 과 함께 수평으로 :
Vertical
layout action 과 함께 수직으로 : (
,
또는
Grid
layout action 를 사용하고 있는 그리드에서:
).
만일 당신이 조절할 필요가 있으면, 당신은 Break Layout action 과 함께 어떤 그리드 배치라도 “Break”할 수 있습니다:
.
당신이 위치, 상대 크기, 등을 변경할 수 있는 "시제품" 모드에 이것은 구성 요소를 복귀합니다. 당신은 그 다음 구성 요소에 고정 위치 배치를 다시 이용할 수 있습니다. (이것 후에 더 많이).
당신은 또한 직접 그리드 배치(그것을 깨지 않고)를 변경할 수 있습니다. 당신은 행 또는 칼럼을 추가할 수 있고, 한 셀부터 다른 것까지 구성 요소를 끌 수 있거나, 또는 당신은 그리드로부터 행 또는 칼럼을 삭제할 수 있습니다. (더 많이 세부사항은 토픽 GUI Building GUI Forms 에서 이용할 수 있습니다.)
모든 원하는 생성 구성 요소 그룹으로, 당신은 Grid
Layout action과 함께 형식 위에서 모든 것을 "감쌉니다" :
,
그것은 사실상 모든 것을 JPanel 컨테이너에서의 형식 위에 붙입니다:

나중에, 당신은 JFrame과 같은 컨테이너에서 이것을 사용할 것이고, 당신의 애플리케이션의 코드에서 지정됩니다.
4. 생성된 당신의 형식과 더불어, 당신은 필드를 포함하는 클래스와 필요한 메소드에 형식 작업을 만들기 위해 특히 형식과 UI 구성 요소를 코드에 bind할 필요가 있습니다.. 당신은 기존 클래스에서 GUI 구성 요소를 필드에 결부할 수 있고, 또는 당신이 형식을 단순히 binding 속성에서 이름을 타이프하는 것에 의해 형성하는 것에 따라 당신은 클래스와 필드를 생성할 수 있습니다.
5. 끝으로, 클래스에서 형식과 구성 요소 경계와 더불어, 당신은 필요한 동작과 이벤트를 위해 그 클래스에 형식을 기능적이게 하기 위해 코드를 씁니다.